Modems

C H A P T E R   1 9

Modems

This chapter presents the requirements for serial modems, fax modems, voice modems, and voice/data modems under the Microsoft Windows family of operating systems.

Overview for Modems

This section presents the key design issues for modems. The Windows operating systems and Win32-based applications use data, fax, voice, and voice/data integration features in modems.

Basic PC 97 modem. The fundamental design principle for compatibility with Windows is for the device to be supported by the Universal Modem Driver (Unimodem), which uses INF files to characterize the behavior of a device. The detailed definition of Unimodem requirements is contained in the Modem Developers Kit (MDK). Future changes will include migration of functions from the device driver into the Windows operating systems and the Win32 Driver Model (WDM).

Also for PC 97, these are the basic design concerns for modems:

Voice and voice/data modems. It is only recommended that a modem include voice or voice/data integration features:

In some countries, these features are not yet legal. For some networks, these features are not yet supported (for example, voice/data integration on GSM digital cellular). For some installations, these features have limited utility (for example, modem pools). However, if voice or voice/data integration capabilities are included, the requirements defined in this chapter must be met.

Wireline modems. These are the design issues and recommendations for PC 97:

Modems for mobile PC systems. The design issues for PC 97 are implementation of analog or digital cellular with standard command sets, as described later in this chapter under the recommendation for cellular phone support. In the short term, Windows and Windows NT can use mobile data and fax. In the longer term, there should be support for voice and Short Messaging Services (SMS).

System Requirements for Modems

This section summarizes the PC system requirements for modems.

1. Modem device provided with PC system

Basic PC 97 Workstation PC 97 Entertainment PC 97
Recommended Required if no network adapter Required; voice/data recommended

Recommended: Internal modem, or USB or PC Card as the external connection for the modem.

If the device is provided with the PC system, it must meet the minimum requirements for modems defined in this chapter.

Modem Basic Features

This section defines requirements for basic hardware features.

2. Modem command set: TIA-602, "Hayes compatible"

Required

TIA-602 codifies the most common data modem.

Recommended: ITU V.25ter, which is a superset of TIA-602 with significant and useful improvements. It includes three new components:

The particular utility of the standard format is that it allows a future modem installer to adaptively install and use a modem without need for INF minidrivers.

3. Data modem: 28.8 Kbps (V.34-1994) with V.42 and V.42bis protocol

Required

Recommended: 33.6 Kbps (V.34-1996).

The dominant use of data modems now is connection to Internet service providers. Web browsing is bandwidth intensive, so the more available the better.

As part of the command set, the modem must have a distinct means for controlling the reporting of modem-to-modem protocols, so the modem can be forced to generate recognizable reports for modulation, error control, and data compression. Examples include the Wn command, the S95 register, the \Vn command, or the ITU V.25ter +MR, +ER, and +DR commands.

4. Synchronous access for data modems: V.80 or similar technique

Recommended

This recommendation can be implemented using V.80 or similar proprietary techniques that provide synchronous access to enable Videophone capabilities over PSTN. ITU V.80, a PC-to-modem protocol based on V.25ter, opens the door to support standard voice/data/video communication from PC software, at minimal cost to the modem maker. It also provides mechanisms to enhance the quality of service of Internet realtime multimedia services by defining standard means for multiplexing data and modem control messages on the same port at the same time, and providing synchronous access to the PC. V.80 includes the following components:

Note If implemented on both sides of a modem connection, V.80 can be used to increase the throughput of PPP or PPTP connections by 25 per cent (delete the start-stop bits). IETF is studying proposals to make use of V.80 for that purpose.

5. Fax modem: 14.4 Kbps (V.17) with Class 1 (TIA-578-A) command set

Required

Recommended: Class 1.0 (ITU T.31) with +FAR support, which allows the hardware to perform adaptive carrier detection.

Modems continue to be useful for fax communications, particularly for sending faxes and print-to-fax. The recent ITU version of this standard includes features for improved performance in the presence of echo delays. T.31 Annex B extends to support V.34 fax, but there are few V.34 fax machines available in 1996.

6. Telephone Device for the Deaf (TDD): V.18 with V.25ter command

Recommended

TDD is also known as Text Telephones. People who are hearing impaired use Text Telephones to communicate over phone lines with both hearing and hearing impaired persons. The U.S. Americans with Disabilities Act requires all businesses of a certain size or larger to have Text Telephone services available and to be able to receive calls from people using Text Telephones.

In North America and Europe, the following types of Text Telephones are used:

ITU recommendation V.18 codifies how all of these devices work and how to adaptively connect to all of them. ITU recommendation V.25ter contains AT commands for control of V.18 features in a modem.

It is recommended to include Text Telephone capability, for the type commonly used in the country of sale and use (for example, Baudot in the U.S., Minitel in France). ASCII (Bell 103), V.21, and V.23 modem capability are common in modems. Voice modems (IS-101 type) commonly contain the ability to do DTMF send and receive. Baudot and EDT can be implemented in software using voice modems and simple software signal processing. However, because the adaptive connection phase is difficult to implement in software, even on a voice modem, it is best to implement V.18 in the modem itself and expose that functionality to the PC using the V.25ter commands.

Voice and Adaptive Connection Technologies for Modems

This section provides requirements and recommendations related to voice, voice/data integration, and adaptive connection.

If any feature is implemented in a modem, if must meet the standards for the feature as defined here to qualify for the "Designed for Microsoft Windows" logo.

7. TIA-695 (AT+V); Speakerphone, if voice modem capabilities

Basic PC 97 Workstation PC 97 Entertainment PC 97
Recommended Recommended Required

Voice features in a modem are valuable for telephone answering functions, supporting applications such as MS-Phone. The current version of the Universal Modem Driver in Windows 95 (Unimodem/V) supports voice modems. The Unimodem driver in Windows NT 4.0 does not support voice; it is planned that future versions will.

The two significant components of the voice command sets are:

Note By late 1996, IS-101 will be superseded by TIA-695, the complete standard. Manufacturers are encouraged to migrate their products to TIA-695.

The industry standard command set for voice modems is the AT+V command set, currently specified in TIA-695. This consists of Hayes AT (ATTENTION) prefixed commands, +V (Voice) prefixed commands, and DLE-shielded in-band commands. Most voice modems currently are compliant with either AT+V or an equivalent (for example, Rockwell AT#V). Microsoft requires the command set for new modems to follow the syntax and functions of AT+V.

Some of the features discussed are based upon Bellcore Custom Local Area Signaling Services (CLASS) that are widely offered by local exchange carriers in North America. These services convey to the customer's premise equipment (CPE) information made available through interoffice signaling between CO switches. For more details about CLASS features, see the related Bellcore documents listed later in this section.

Speakerphones can be either half-duplex or full-duplex. In a full-duplex speakerphone, avoid using user-initiated training sequences for either electrical or acoustical echo canceller taps. Also, avoid using long downloads or uploads of data for loading of speakerphone filter taps. Speakerphone control should be achieved by way of AT commands that provide the ability to enable and disable the speakerphone and to adjust the output volume and input microphone level.

Unimodem supports the telephone line audio path using a Windows waveform driver. This architecture is described in the Microsoft Windows Programmer's Guide. The wave-in and wave-out devices connected to the phone line must support 8 kHz, monaural, 16-bit PCM format wave data. Additional waveform driver requirements are described in the MDK. The current implementation of Unimodem can support IMA ADPCM at three sample rates (8000 Hz, 7200 Hz, or 4800 Hz) and Rockwell ADPCM.

An alternative Unimodem implementation is acceptable if it achieves similar or better performance.

8. Voice-coding: real-time wave encoder/decoder

Recommended

This can be an ADPCM, such as IMA or Rockwell, or a device with a Windows waveform driver.

9. Adaptive connection support, V.25, V.8, and V.8bis call control signaling, with V.25ter Annex A modem commands

Recommended

V.25, V.8, and V.8bis call mode discrimination signaling, with V.25 call mode discrimination commands and responses, and V.8 or V.8bis call mode discrimination command set (V.25ter Annex A).

For PC 97, all modems must support V.34 modulation. V.34 in turn requires V.8 call control signaling. To support PC-controlled adaptive connection, modems must support V.25ter Annex A commands, so that the PC and modem driver can adaptively recognize and sort data calls from voice calls.

Further, to support videophone or voice/data integration, modems must support V.8bis call modality signaling, with the corresponding V.25ter Annex A commands.

Call Modality Discrimination issues arise when a telephone line expects calls of either voice, fax, or data modes. For example, this situation arises when data mode devices such as a fax machine or a data modem are attached to a line that also handles voice calls. VoiceView, fax, SVD, videophone, and data calls are examples of the potential for shared use on a voice line. Problems arise when the two ends of a call determine how the call will be handled; for example:

Examples of problems are the following:

ITU V.25 defines calling and answering tones for fax and data calls. These are commonly used in faxes worldwide but not commonly used for data calls (although it is mandatory in some countries). It is recommended that data modems contain features to enable generation and detection of these signals, for affirmative detection of incoming fax and data calls. For standard AT commands and responses for these features, see TIA IS-101 and V.25ter Annex A.

ITU V.8 defines means for the calling or originating modem to communicate the selected call types to the answering or responding modem at the beginning of the call. V.8 Call Indication (CI) signal allows a calling modem to announce the desired call type to the answering modem, so the answering modem can do clean voice/data/fax switching. V.25ter Annex A commands allow the PC to enable CI on the calling side and to detect and respond to it with the appropriate application on the answering side. V.8 is required for all V.34 modems. Proprietary and standard AT commands are available for control of V.8 negotiation; see V.25ter Annex A.

Several vendors implement a market standard for DSVD (Digital Simultaneous Voice and Data). These devices use V.8 for call negotiation.

ITU V.8bis supports automatic determination of the appropriate mode of interoperating by means of an unobtrusive, brief, dual-tone mechanism to establish that both ends of a call support V.8bis. These can be used at the beginning of the call or at a later time. Such a brief DTMF burst can easily be dismissed by the voice caller as a remnant of network signaling, unlike a repetitive train of V.21 modulation that might be interpreted as "fax machine tones" when two data modems negotiate. The brevity and user-friendliness of the dual-tone mechanism addresses the first problem described above.

V.8bis call discrimination is required for ITU Simultaneous Voice/Data technologies such as the new V.70 suite, and including PSTN Videophones (H.324). Standard commands for PC control of V.8bis negotiation are defined in V.25ter Annex A (1996).

Modems that support IS-101 (predecessor to TIA-695) can also support automatic attendant applications that use a voice outgoing message to prompt callers to identify themselves (by speech recognition or DTMF) and specify the desired call type.

References:

Call Modality Discrimination (ITU/T V.8bis)

V.8bis combines Call Modality Discrimination, Terminal Selection, and Capability Exchange and Selection to provide automatic call termination on a multimode line. V.8bis seeks to make these connections both temporally efficient as well as "listener friendly" to the voice mode caller.

ITU-T V.25ter or TIA-602

This lists the AT command set, with standard extensions for modem ID, local port control, modulation control, and so on. Annex A covers adaptive call control using V.25 calling tones, V.8 and V.8bis negotiations, and some fax signals.

TIA Standard TIA-695 (AT+V Modem)

TIA-695 is the ANSI/TIA/EIA standard for voice modems, entitled the "Facsimile Digital Interfaces-Voice Control Standard for Asynchronous DCE."

The standard includes a voice control-and-response interface definition, a collection of basic functions that allow the DTE to implement a call discrimination algorithm, and a control structure that includes data, fax, voice, and other future modes. This standard is currently the most complete statement of voice modem requirements. This standard defines the +V subcommands for the AT command set.

Eventually, TIA-695 will be partial basis for an ITU recommendation.

10. Support existing CPE, local telset, extension offhook detection, and loop sensing, if voice modem capabilities present

Recommended

The following capabilities of the local telset attached to the modem should be supported:

References:

Bellcore TR-NWT-000030

"Voiceband Data Transmission Interface Generic Requirements."

Bellcore SR-TSV-002476

"CPE Compatibility Considerations for the Voiceband Data Transmission Interface."

Bellcore TR-NWT-001401

"Visual Message Waiting Indicator Generic Requirements."

11. Simultaneous voice/data integration capabilities

Recommended

The following technologies can be used to support simultaneous voice/data:

In recent years, there has been a profusion of incompatible choices for Voice Data technology. In the short term, the confusion over multiple DSVD technologies has opened the door for the simpler but useful ASVD techniques. ("V.34Q" standardization should be completed in ITU.) However, the recent completion of V.70 and H.324 should converge the market. Future versions of Windows will attempt to allow IHVs and ISVs to accommodate all of them, so that manufacturers and customers can choose based on their needs.

Microsoft is an active member of the International Multimedia Telecommunications Consortium (IMTC). Currently, the IMTC appears to be backing ITU H.324 for voice/data integration, as a substrate for ITU T.120 conferencing. Interested parties are invited to join and participate in the work of the IMTC, and in related ITU study groups.

It is recommended for PC 97 to include the new ITU V.80 recommendation in the modem control function. (See the recommendation for Synchronous Access Mode for data modems earlier in this chapter). V.80 allows complex modem functions (that is, V.42, the V.75 DSVD multiplexor, the H.223 videophone multiplexor) to be implemented in Windows drivers. The advantages are that the resulting system is more powerful and more flexible, data processing is uploaded to the PC where it belongs, and the modems can remain cost competitive.

V.8bis is required for standard DSVD (V.70) or video telephony (H.324) calls.
It allows mutual capabilities exchange between PCs during a voice call, and transition from pure voice to voice/data/video.

V.25ter Annex A commands allows the PC to initiate V.8bis negotiation with the remote PC/terminal, respond to V.8bis signals from the remote PC, and then launch the appropriate application.

Note PC manufacturers who supply POTS-based video conferencing solutions must supply H.324 - compatible modems with their PC systems. ISDN-based video conferencing solutions should be H-320-compatible.

12. VoiceView as alternating voice/data integration capabilities

Optional

VoiceView is a useful but obsolete means for voice/data integration. It is not recommended for new designs.

A voice modem might be able to switch a call from voice to data and back to voice using the VoiceView AVD protocol. Modem firmware and hardware features, such as detecting VoiceView-specific tones and muting the earpiece during data transfer, are necessary for optimal VoiceView AVD modem design.

To facilitate automatic switching from AT+V mode (service class 8) to other service classes, a modem should allow detection of VoiceView start sequences while in AT+V mode. The modem should monitor the line for VoiceView events in addition to the normal AT+V monitoring.

When a VoiceView event is detected on the phone line, the modem mutes the local handset and issues a <DLE>-extended packet to the application (usually the TSP). The extended packet corresponds to one of eight possible VoiceView event responses. After a VoiceView data mode start sequence, the modem should start the data pump to receive VoiceView data and wait for the application to request a switch to VoiceView data mode, as described in the VoiceView Protocol Specification.

For all other event types, the modem simply completes the necessary responses and acknowledgments, unmutes the local handset, and resumes normal AT+V operation.

Reference:
Alternating Voice or Data (VoiceView) Modem, FCLASS=80;
VoiceView Tone Detection by Voice Modems, FCLASS=8

Details of the VoiceView alternating voice/data protocol are available from Radish Communications, Boulder, Colorado, USA; (303) 443-2237.

CLASS Services and Other Features for Modems

This section provides requirements and recommendations related to CLASS services.

If any feature is implemented in a modem, if must meet the standards for the feature as defined here to qualify for the "Designed for Microsoft Windows" logo.

13. Distinctive ringing class service

Recommended

This feature is recommended for implementation where applicable. Distinctive ringing assigns multiple phone numbers to a single line for which each number has its own special ring pattern. IS-101 defines a method for reporting the ringing cadence.

Reference:

Bellcore TR-TSY-000219

CLASS Feature: Distinctive Ringing/Call Waiting FSD 01-01-1110, or see ANSI T1.401.02-1995.

14. Caller ID service

Recommended

This feature is recommended for implementation where applicable. Caller ID is generally available only in North America and is not legal in some countries. This feature will never become a design requirement.

In the U.S. implementation, Calling Number/Name ID conveys the number from which a call originates. In addition, the directory name, date, and time of day is transmitted.

If reliable call-waiting subscriber alerting tone technology is available, the identity of a second caller can be conveyed as described in the Bellcore "Calling Identity Delivery on Call Waiting" document listed below. This gives the customer the same Caller ID capabilities on both incoming calls when call waiting is available. Caller ID might not be implemented in the same fashion in all jurisdictions-that is, an implementation can employ DTMF signaling not preceded by a ring.

A modem should support Caller ID information as a text string reported between rings, as defined in TIA-695 for use in modem states other than +FCLASS=8. If voice features are also supported in the modem, then the appropriate TIA-695 DLE sequences must also be supported.

References:

Bellcore TR-NWT-000031

CLASS Feature: Calling Number Delivery FSD 01-02-1051.

Bellcore TR-NWT-001188

CLASS Feature: Calling Name Delivery Generic Requirements FSD 01-02-1070.

Bellcore TR-NWT-000575

CLASS Feature: Calling Identity Delivery on Call Waiting FSD 01-02-1090.

Bellcore TR-TSY-000571

CLASS Feature: Call Waiting FSD 01-02-1201.

Bellcore TR-NWT-000575

CLASS Feature: Calling Identity Delivery on Call Waiting FSD 01-02-1090.

Bellcore TR-NWT-00416

CLASS Feature: Call Waiting Deluxe FSD 01-02-1215.

15. Dial string modifiers for DTE-DCE commands

Recommended

In addition to the dial string characters described in V.25ter or TIA-602, use of the dollar-sign character ($) is recommended to wait for the calling-card prompt tone (so-called "bong tone"). Bellcore's BOC Notes on the Network (SR-TSV-002275, Issue 2, April 1994, Section 5 Signaling, page 6—218) describes this tone for North American LECs. Some European administrations are also implementing this capability.

16. In-band Voice Mode (AT+V) responses for DTE-DCE commands

Recommended

This feature is recommended for implementation where applicable. As a general rule, modem events should be reported in all configurations of speakerphone and handset. In-band responses are also known as events, as described in the related TIA-695 documents. Alternatives to the serial asynchronous connection between DCE and DTE exist. The use of in-band responses with a separate voice data path is optional. The MDK describes waveform driver development for such an alternative architecture.

17. Compound Voice Mode (AT+V) responses for DTE-DCE commands

Recommended

This feature is recommended for implementation where applicable. Compound responses are known as Complex Event Detection Reports and are described in the related TIA-695 documents.

18. Telephone wave device compression method selection

Recommended

This feature is recommended for implementation where applicable. TIA-695 section 10.2.8, "Compression Method Selection," describes the +VSM= command and lists Compression Method identifier numerics and strings. The association between the WaveFormat registry key and the +VSM= command is described in the MDK.

19. Cellular phone support

Recommended

This feature is recommended for implementation where applicable. Cellular telephone systems are widely deployed around the industrialized world and are now being deployed everywhere else. In North America, analog cellular systems (TIA-553) are currently predominant, although two types of digital cellular systems will also be deployed: Code Division Multiplexed Access (CDMA, TIA IS-95) and Time Division Multiplexed Access (TDMA, IS-136). In Europe and the rest of the world, the GSM digital cellular system is widely deployed.

In both analog and digital systems, there have been problems with implementing data and facsimile communications. For analog cellular, the problem is that the noise, fade, and signal drop-out problems tolerated by human speakers will cripple ordinary data modems. In the case of digital cellular, the problem is that the voice coding algorithms used cannot pass modem carriers intact at all.

In North America, standards have been developed for the modem-to-modem protocols to survive analog cellular impairments, such as Microcom's MNP 10 and AT&T Enhanced Cellular Protocol (ECP). These are helpful and recommended where applicable. Also, modern modem technologies such as V.34 are better able to get some useful data bandwidth on analog cellular connections than V.32bis or V.22bis modems.

There is also a new standard extended command set, defined in TIA-678, for general wireless modem control, with specific extensions for supporting analog cellular connections and analog cellular phones. (Notice that TIA-678 is technically identical to PCCA STD-101 and Annexes A, F, and I.)

For all three digital cellular systems, the system design has been extended to offer data, fax, voice, and short messaging (SMS) services to mobile users. In all cases, a modem pool is added to the ground stations, where connection is made to the Public Switched Telephone Network (PSTN). Access to the logical serial ports of these modems is made using the digital error-controlled radio link to the equipped mobile phone and is exposed on a serial port or associated PC Card.

The AT command sets for these digital cellular phone systems are contained in the following standards.

Standard Command set

GSM 7.07 GSM system: data, fax, voice
GSM 7.05 GSM Short Messaging Services
TIA IS-99 North American CDMA: data and fax
TIA IS-135 North American TDMA: data and fax

20. Support for blacklisted and delayed number clearing

Recommended

The modem should clear its blacklisted and delayed number tables if the associated handset goes off hook.

During certain international PTT certification processes, modems must support the blacklisted and delayed numbers feature. That means that when the modem fails to dial a specific number for a certain number of times, the dialed number is stored in an internal list. Any subsequent automated dialing operation to this number is then either delayed for a time (delayed) or might be forbidden until some form of manual intervention occurs (blacklisted). The international certification processes specify that manual intervention using an external device is required in order to clear these numbers.

PC 97 Design for Modems

This section summarizes requirements related to the design initiatives for PC 97 in Part 1 of this guide.

Plug and Play and Bus Design for Modems

The items in this section are requirements for Plug and Play capabilities.

21. Plug and Play device identifier

Required

Note Implement either a bus Plug and Play ID or a COM port Plug and Play ID, but not both.

22. Automatic resource assignment and dynamic disable capabilities

Required

The system must be capable of automatically assigning, disabling, and relocating the resources used by this device when necessary, using the method required for the related bus class. Changing or adding this device to the system must not require changing jumpers or switches on either the adapter or the system board. In the event of an irreconcilable conflict with other devices on the system, the system must be able to disable the device to prevent the system from stalling.

23. Minimum resource requirements for ISA and legacy devices

Required

As for all PC 97 devices, unique 16-bit I/O address decoding is required. These are the required resource settings for ISA and legacy devices:

Notice that, as for all devices, IRQ sharing is required if the minimum resource requirements cannot be met.

24. PCI v. 2.1 or higher, if PCI is used

Required

This device must comply with the PCI v. 2.1 specification if PCI is used as the bus connection for the modem. This ensures that all Plug and Play requirements are met and that Microsoft drivers support this device.

25. USB communications device class specification, if USB is used

Required

This device must comply with the Universal Serial Bus Specification (v. 1.0 or higher) and the related USB device class specification. This ensures that all Plug and Play requirements are met and that Microsoft drivers support this device.

26. Meets all requirements for parallel peripherals, if LPT port is used

Required

This requirement means the modem is enumerated by the parallel port enumerator to ensure that the device is compatible with various parallel transfer modes. This includes standard, bidirectional mode, ECP, and EPP modes. For information about requirements for parallel port peripherals, see the "Serial, Parallel, and Wireless Support" chapter.

Power Management for Modems

This section summarizes the specific power management requirements for modems. See also the specific power management interface requirements for the bus (PC Card, PCI, IEEE 1394, or USB) as defined in Part 3 of this guide.

27. Compliance with "Device Class Power Management Reference Specification"

Required

The "Device Class Power Management Reference Specification" for the Communication Device Class was developed with device manufacturers. This specification provides definitions of the OnNow device power states (D0 - D3) for these devices, including modems. The specification also covers device functionality expected in each power state and the possible Wakeup event definitions for the class. Power states D0 and D3 are required. Other power states are recommended.

28. Support Wakeup Events defined in "Device Class Power Management Reference Specification"

Required

For PC 97, a required feature for modems is the ability to cause a Wakeup event as defined in the "Device Class Power Management Reference Specification" for communications devices.

Device Drivers and Installation for Modems

This section summarizes requirements for device drivers for modems. The items in this section are requirements for all PC 97 systems.

29. Driver supports Unimodem

Required

The device driver must include Unimodem support.

30. Device driver and installation meet Windows and Windows NT standards

Required

The standard requirements for device drivers and installation include the following:

For complete details about standard installation requirements for drivers, see "Basic PC 97" in Part 2 of this guide.

31. Applications provided with device meet Windows standards

Required

Any Windows-based applications provided with the device, such as fax utilities, must meet Microsoft requirements for software compatibility as indicated by the "Designed for Microsoft Windows" logo.

References for Modems

This section lists some of the publications, services, and tools available to help build hardware optimized to work with Windows operating systems.

Bellcore Technical References

Bellcore
U.S. and Canada: (800) 521-2673
Outside North America: (908) 699-5800

ITU, ANSI, or TIA communications standards

ITU Sales
Phone: (41) (22) 730-6141
Fax: (41) (22) 730-5194
E-mail: sales@itu.ch

Global Engineering Documents
Phone (U.S. and Canada): (800) 854-7179
Fax (outside North America): (303) 843-9880

Device Class Power Management Reference Specification

http://www.microsoft.com/hwdev/onnow.htm

Windows 95 Modem Developers Kit (MDK)

ftp://ftp.microsoft.com/developr/drg/modem/modemdev.exe

Windows 95 and Windows NT Driver Developers Kit (DDK)

Microsoft Developers Network (MSDN) Professional membership

Plug and Play specifications

http://www.microsoft.com/hwdev/pnpspecs.htm

Checklist for Modems

Basic PC 97 Workstation PC 97 Entertainment PC 97


System Requirements for Modems
1. Modem device provided with PC system
Recommended Required if no network adapter Required; voice/data recommended

Modem Basic Features
2. Modem command set: TIA-602, "Hayes compatible"
Required
3. Data modem: 28.8 Kbps (V.34-1994) with V.42 and V.42bis protocol
Required
4. Synchronous access for data modems: V.80 or similar technique
Recommended
5. Fax modem: 14.4 Kbps (V.17) with Class 1 (TIA-578-A) command set
Required
6. Telephone Device for the Deaf (TDD): V.18 with V.25ter command
Recommended

Voice and Adaptive Connection Technologies for Modems
7. TIA-695 (AT+V); Speakerphone, if voice modem capabilities
Recommended Recommended Required
8. Voice-coding: real-time wave encoder/decoder
Recommended
9. Adaptive connection support, V.25, V.8, and V.8bis call control signaling, with V.25ter Annex A modem commands
Recommended
10. Support existing CPE, local telset, extension offhook detection, and loop sensing, if voice modem capabilities present
Recommended
11. Simultaneous voice/data integration capabilities
Recommended
12. VoiceView as alternating voice/data integration capabilities
Optional

CLASS Services and Other Features for Modems
13. Distinctive ringing class service
Recommended
14. Caller ID service
Recommended
15. Dial string modifiers for DTE-DCE commands
Recommended
16. In-band Voice Mode (AT+V) responses for DTE-DCE commands
Recommended
17. Compound Voice Mode (AT+V) responses for DTE-DCE commands
Recommended
18. Telephone wave device compression method selection
Recommended
19. Cellular phone support
Recommended
20. Support for blacklisted and delayed number clearing
Recommended

PC 97 Design for Modems
Plug and Play and Bus Design for Modems
21. Plug and Play device identifier
Required
22. Automatic resource assignment and dynamic disable capabilities
Required
23. Minimum resource requirements for ISA and legacy devices
Required
24. PCI v. 2.1 or higher, if PCI is used
Required
25. USB communications device class specification, if USB is used
Required
26. Meets all requirements for parallel peripherals, if LPT port is used
Required

Power Management for Modems
27. Compliance with "Device Class Power Management Reference Specification"
Required
28. Support Wakeup Events defined in "Device Class Power Management Reference Specification"
Required

Device Drivers and Installation for Modems
29. Driver supports Unimodem
Required
30. Device driver and installation meet Windows and Windows NT standards
Required
31. Applications provided with device meet Windows standards
Required